//package com.why.blog.common.utils;
//
//import java.util.ArrayList;
//import java.util.Collections;
//import java.util.Comparator;
//import java.util.List;
//import java.util.Map;
//
//import com.alibaba.fastjson.JSON;
//import com.alibaba.fastjson.JSONArray;
//import com.yc.paipai.entity.Menu;
//
//
//
///**
// * 菜单树形结构
// * @author dairong
// *
// */
//public class MenuTree {
//
//
//	public static Object findTree(List<Map<String, Object>> result){
//		  List<Menu> allMenu= new ArrayList<Menu>();
//		 	  for (Map<String, Object> temp : result) {
//		 		  	Menu menu=new Menu();
//			 		menu.setId(temp.get("mid")+"");
//			 		menu.setPid(temp.get("mpid")+"");
//			 		menu.setTitle(temp.get("title")+"");
//			 		menu.setText(temp.get("title")+"");
//			 		menu.setIclass(temp.get("iClass")+"");
//			 		menu.setIcon(temp.get("icon")+"");
//			 		menu.setAhref(temp.get("aHref")+"");
//			 		menu.setAurl(temp.get("aUrl")+"");
//			 		menu.setType(temp.get("type")+"");
//			 		menu.setSort(temp.get("sort")+"");
//			 		allMenu.add(menu);
//			}
//		 //查询所有菜单
//	      //根节点
//	      List<Menu> rootMenu = new ArrayList<Menu>();
//	      for (Menu nav : allMenu) {
//	          if(nav.getPid().equals("0")){//父节点是0的，为根节点。
//	            rootMenu.add(nav);
//	          }
//	       }
//		    Collections.sort(rootMenu, new Comparator<Menu>() {
//		            public int compare(Menu o1, Menu o2) {
//			                Integer age1= Integer.valueOf(o1.getSort()) ;//age1是从你list里面拿出来的第一个 age
//			                Integer age2= Integer.valueOf(o2.getSort()); //age1是从你list里面拿出来的第二个age
//			                return age1.compareTo(age2);   //return age2.compareTo(age1);为降序
//		            }
//		  });
//
//	      //为根菜单设置子菜单，getClild是递归调用的
//		    for (Menu nav : rootMenu) {
//		        /* 获取根节点下的所有子节点 使用getChild方法*/
//		        List<Menu> childList = getChild(nav.getId(), allMenu);
//		        nav.setChildren(childList);//给根节点设置子节点
//
//		  }
//		   JSONArray json = JSONArray.parseArray(JSON.toJSONString(rootMenu));
//		  return json;
//}
//
//
//
//
///**
//
//   * 获取子节点
//
//   * @param id 父节点id
//
//   * @param allMenu 所有菜单列表
//
//   * @return 每个根节点下，所有子菜单列表
//
//   */
//
//  public static List<Menu> getChild(String id,List<Menu> allMenu){
//     List<Menu> childList = new ArrayList<Menu>();
//	    for (Menu nav : allMenu) {
//
//	      // 遍历所有节点，将所有菜单的父id与传过来的根节点的id比较
//	      //相等说明：为该根节点的子节点。
//
//		      if(nav.getPid().equals(id)){
//
//		        childList.add(nav);
//
//		      }
//
//	    }
//    //递归
//	    for (Menu nav : childList) {
//	      nav.setChildren(getChild(nav.getId(), allMenu));
//	    }
//	    Collections.sort(childList, new Comparator<Menu>() {
//	        public int compare(Menu o1, Menu o2) {
//	                Integer age1= Integer.valueOf(o1.getSort()) ;//age1是从你list里面拿出来的第一个 age
//	                Integer age2= Integer.valueOf(o2.getSort()); //age1是从你list里面拿出来的第二个age
//	                return age1.compareTo(age2);   //return age2.compareTo(age1);为降序
//	        }
//	    });
//    //如果节点下没有子节点，返回一个空List（递归退出）
//    if(childList.size() == 0){
//      return new ArrayList<Menu>();
//
//    }
//    return childList;
//
//  }
//
//}
//
